package com.wtwd.wtwddevice.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.wtwd.wtwddevice.model.entity.DeviceSleepRecord;

/**
 * <p>
 * 服务类
 * </p>
 *
 * @author mjy
 * @since 2024-05-31
 */
public interface IDeviceSleepRecordService extends IService<DeviceSleepRecord> {

    /**
     * 睡眠统计数据
     *
     * @param deviceSleepRecord
     * @return
     */
    boolean insertOrUpdate(DeviceSleepRecord deviceSleepRecord);

    /**
     * 根据设备id和日期查询睡眠数据
     *
     * @param deviceId
     * @param time
     * @return
     */
    DeviceSleepRecord getDeviceSleepByDeviceIdAndTime(Long deviceId, String time);

    /**
     * 睡眠数据为设备统计
     * 设备一天只会上传一次睡眠数据
     * 如果设备上传多次睡眠数据，默认后面直接替换前面的数据统计
     * <p>
     * <p>
     * 同步睡眠记录
     * 1.查询今日睡眠数据是否已经存在
     * 不存在插入
     * <p>
     * 存在更新
     * 存在则删除掉睡眠详细信息重新同步睡眠详细信息
     *
     * @param deviceSleepRecord
     * @return
     */
    DeviceSleepRecord synchronousSleepRecord(DeviceSleepRecord deviceSleepRecord);
}
